/*

* ------------------------------------------------------------------------
* ------------------------------------------------------------------------
* |     Smart-Shop开源商城系统/ Java商城-首选电商平台系统 请务必保留此注释头信息
* |     开源地址: https://gitee.com/ningbo-qishan/gruul-mall
* ------------------------------------------------------------------------
* ------------------------------------------------------------------------
* |     可正常分享和学习源码,未经授权 不可商用！
* |     商业版中台购买/开源版商业授权 联系技术客服
* |     官网:  https://www.73app.cn/
* ------------------------------------------------------------------------
* ------------------------------------------------------------------------
* |     Copyright (c) 2016-2999 宁波启山智软科技有限公司
* |     版权所有 ,侵权必究！
* ------------------------------------------------------------------------

*/
package com.medusa.gruul.solitaire.service.manager.impl;

import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.medusa.gruul.common.core.exception.ServiceException;
import com.medusa.gruul.common.core.util.SystemCode;
import com.medusa.gruul.solitaire.api.entity.SolitaireWeChatGroup;
import com.medusa.gruul.solitaire.api.model.dto.manager.SolitaireWeChatGroupDto;
import com.medusa.gruul.solitaire.api.model.param.manager.SolitaireWeChatGroupParam;
import com.medusa.gruul.solitaire.api.model.vo.manager.SolitaireWeChatGroupVo;
import com.medusa.gruul.solitaire.mapper.manager.SolitaireWeChatGroupMapper;
import com.medusa.gruul.solitaire.service.manager.ISolitaireWeChatGroupService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;


/**
 * <p>
 * 接龙机器人信息 服务实现类
 * </p>
 *
 * @author lcysike
 * @since 2020-06-05
 */
@Service
public class SolitaireWeChatGroupServiceImpl extends ServiceImpl<SolitaireWeChatGroupMapper, SolitaireWeChatGroup> implements ISolitaireWeChatGroupService {
//
//    /**
//     * 获取接龙机器人分页信息
//     *
//     * @param solitaireWeChatGroupParam
//     * @return 接龙机器人信息分页对象
//     */
//    @Override
//    public IPage<SolitaireWeChatGroupVo> getWeChatGroupList(SolitaireWeChatGroupParam solitaireWeChatGroupParam) {
//        IPage<SolitaireWeChatGroupVo> page = new Page<>(solitaireWeChatGroupParam.getCurrent(), solitaireWeChatGroupParam.getSize());
//        return page.setRecords(this.baseMapper.queryWeChatGroupList(page, solitaireWeChatGroupParam));
//    }
//
//    /**
//     * 获取接龙机器人团长信息明细
//     *
//     * @param solitaireWeChatGroupParam
//     * @return 接龙机器人团长信息对象
//     */
//    @Override
//    public IPage<SolitaireWeChatGroupVo> getCommanderWeChatGroupList(SolitaireWeChatGroupParam solitaireWeChatGroupParam) {
//        IPage<SolitaireWeChatGroupVo> page = new Page<>(solitaireWeChatGroupParam.getCurrent(), solitaireWeChatGroupParam.getSize());
//        List<SolitaireWeChatGroupVo> solitaireWeChatGroupVos = this.baseMapper.queryCommanderWeChatGroupList(page, solitaireWeChatGroupParam);
//        return page.setRecords(solitaireWeChatGroupVos);
//    }
//
//
//    /**
//     * 接龙机器人关联微信群批量更新
//     *
//     * @param solitaireWeChatGroupDtos
//     * @param commanderId
//     */
//    @Override
//    @Transactional(rollbackFor = Exception.class)
//    public void updateWeChatGroup(List<SolitaireWeChatGroupDto> solitaireWeChatGroupDtos, Long commanderId) {
//        //先删除关联微信群信息再新增微信群信息
//        this.baseMapper.delete(new QueryWrapper<SolitaireWeChatGroup>().eq("commander_id", commanderId));
//        solitaireWeChatGroupDtos.stream().forEach(bean -> {
//            SolitaireWeChatGroup solitaireWeChatGroup = bean.coverWeChatGroup();
//            solitaireWeChatGroup.setCommanderId(commanderId);
//            int insert = this.baseMapper.insert(solitaireWeChatGroup);
//            if (insert == 0) {
//                throw new ServiceException("微信群信息新增失败！", SystemCode.DATA_ADD_FAILED.getCode());
//            }
//        });
//    }
//
//    /**
//     * 机器人团长关联微信群信息删除
//     *
//     * @param id 机器人团长关联微信群id
//     */
//    @Override
//    @Transactional(rollbackFor = Exception.class)
//    public void deleteWeChatGroup(Long id) {
//        SolitaireWeChatGroup solitaireWeChatGroup = this.baseMapper.selectById(id);
//        if (BeanUtil.isEmpty(solitaireWeChatGroup)) {
//            throw new ServiceException("该团长群信息信息不存在！", SystemCode.DATA_EXISTED.getCode());
//        }
//        //删除团长信息
//        int delete = this.baseMapper.deleteById(id);
//        if(delete == 0){
//            throw new ServiceException("微信群信息删除失败！", SystemCode.DATA_DELETE_FAILED.getCode());
//        }
//    }
}
